ハイブリッド検索 + Re-Rank
https://scrapbox.io/files/6632ef5138605f0024e8ca15.png
Microsoftの報告だと、
ハイブリッド検索とrerankを組み合わせることで、ドキュメントの再現関連性が大幅に向上した。
RAGアーキテクチャを採用した生成AIシナリオで特に効果的
Difyの記事
ハイブリッド検索は、様々な検索技術を効果的に組み合わせて再現性を向上させますが、異なる検索モードからのクエリ結果をマージし、正規化する必要があります。このプロセスは、大規模モデルにデータを入力する前に、データをより良い比較、分析、および処理のための統一された標準に変換します。ここで、スコアリングシステム、特にRerankモデルが不可欠になります。
Rerankモデルは、ユーザーのクエリとの意味的整合性に基づいて候補ドキュメントを再ランク付けすることにより、意味的ソート結果を改善します。その中核原理は、ユーザーの質問と各ドキュメントの関連性スコアを計算し、関連性の高い順にドキュメントのリストを返すことです。人気のあるrerankモデルには、Cohere rerank、bge-rerankerなどがあります。
https://scrapbox.io/files/6632ef5138605f0024e8ca15.png
通常、再ランク付けの前に予備検索が行われます。クエリと何百万ものドキュメントの関連性スコアを計算するのは非常に非効率的だからです。したがって、再ランク付けは多くの場合、検索プロセスの最後に位置し、さまざまな検索システムからの結果を統合してソートするのに理想的です。
ただし、再ランク付けは、異なる検索システムからの結果を組み合わせるだけに限定されません。単一の検索モードでも有益です。キーワード検索後の意味的再ランク付けなど、再ランク付けステップを導入すると、ドキュメントの再現効果が大幅に向上します。
実際のアプリケーションでは、複数のクエリ結果を正規化することに加えて、大規模モデルに渡されるテキストセグメントの数は、通常、それらを提供する前に制限されます(つまり、TopK、rerankモデルのパラメーターで調整可能)。この制限は、大規模モデルの入力ウィンドウサイズが通常4Kから128Kトークンの範囲であるためです。したがって、モデルの入力ウィンドウサイズの制約に合わせて、適切なセグメンテーション戦略とTopK値を選択する必要があります。
十分に大きなモデルのコンテキストウィンドウがあっても、過剰な数の再現セグメントは、あまり関連性の低いコンテンツを持ち込み、回答の品質を低下させる可能性があることを認識することが重要です。したがって、Rerankでより大きなTopKパラメーターが必ずしも良い結果につながるわけではありません。 Re-Rankは、検索技術の代替ではなく、既存の検索システムを強化する補完的なツールと見なされるべきです。その主な利点は、検索結果を絞り込むためのシンプルで複雑さの低い方法を提供し、インフラストラクチャに大きな変更を加えることなく、既存の検索システムに意味的関連性を統合できることです。 Cohere Rerankを例にとると、その統合は簡単です。ユーザーはアカウントに登録してAPIキーを取得するだけで済み、2行のコードで実装できます。さらに、Cohere Rerankは多言語モデルをサポートしているため、さまざまな言語のテキストクエリを同時にソートできます。